package repositorio;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Calendar;
import java.util.List;


/**
 * The persistent class for the PASAJERO database table.
 * 
 */
@Entity
@NamedQuery(name="Pasajero.findAll", query="SELECT p FROM Pasajero p")
public class Pasajero implements Serializable {
	private static final long serialVersionUID = 1L;
	private int idPasajero;
	private String apellido;
	private String calle;
	private String codigopostal;
	private String cuit;
	private String departamento;
	private String email;
	private Calendar fechanacimiento;
	private String nacionalidad;
	private String nombre;
	private String nrodoc;
	private String numcalle;
	private String ocupacion;
	private String piso;
	private String situacioniva;
	private String telefono;
	private List<Estadia> estadias;
	private Localidad localidad;
	private Tipodoc tipodoc;

	public Pasajero() {
	}


	@Id
	@SequenceGenerator(name="PASAJERO_IDPASAJERO_GENERATOR" )
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="PASAJERO_IDPASAJERO_GENERATOR")
	@Column(name="ID_PASAJERO")
	public int getIdPasajero() {
		return this.idPasajero;
	}

	public void setIdPasajero(int idPasajero) {
		this.idPasajero = idPasajero;
	}


	public String getApellido() {
		return this.apellido;
	}

	public void setApellido(String apellido) {
		this.apellido = apellido;
	}


	public String getCalle() {
		return this.calle;
	}

	public void setCalle(String calle) {
		this.calle = calle;
	}


	public String getCodigopostal() {
		return this.codigopostal;
	}

	public void setCodigopostal(String codigopostal) {
		this.codigopostal = codigopostal;
	}


	public String getCuit() {
		return this.cuit;
	}

	public void setCuit(String cuit) {
		this.cuit = cuit;
	}


	public String getDepartamento() {
		return this.departamento;
	}

	public void setDepartamento(String departamento) {
		this.departamento = departamento;
	}


	public String getEmail() {
		return this.email;
	}

	public void setEmail(String email) {
		this.email = email;
	}


	@Temporal(TemporalType.DATE)
	public Calendar getFechanacimiento() {
		return this.fechanacimiento;
	}

	public void setFechanacimiento(Calendar fechanacimiento) {
		this.fechanacimiento = fechanacimiento;
	}


	public String getNacionalidad() {
		return this.nacionalidad;
	}

	public void setNacionalidad(String nacionalidad) {
		this.nacionalidad = nacionalidad;
	}


	public String getNombre() {
		return this.nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}


	public String getNrodoc() {
		return this.nrodoc;
	}

	public void setNrodoc(String nrodoc) {
		this.nrodoc = nrodoc;
	}


	public String getNumcalle() {
		return this.numcalle;
	}

	public void setNumcalle(String numcalle) {
		this.numcalle = numcalle;
	}


	public String getOcupacion() {
		return this.ocupacion;
	}

	public void setOcupacion(String ocupacion) {
		this.ocupacion = ocupacion;
	}


	public String getPiso() {
		return this.piso;
	}

	public void setPiso(String piso) {
		this.piso = piso;
	}


	public String getSituacioniva() {
		return this.situacioniva;
	}

	public void setSituacioniva(String situacioniva) {
		this.situacioniva = situacioniva;
	}


	public String getTelefono() {
		return this.telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}


	//bi-directional many-to-many association to Estadia
	@ManyToMany(mappedBy="pasajeros", fetch=FetchType.EAGER)
	public List<Estadia> getEstadias() {
		return this.estadias;
	}

	public void setEstadias(List<Estadia> estadias) {
		this.estadias = estadias;
	}


	//uni-directional many-to-one association to Localidad
	@ManyToOne
	@JoinColumn(name="ID_LOCALIDAD")
	public Localidad getLocalidad() {
		return this.localidad;
	}

	public void setLocalidad(Localidad localidad) {
		this.localidad = localidad;
	}


	//uni-directional many-to-one association to Tipodoc
	@ManyToOne
	@JoinColumn(name="ID_TIPODOC")
	public Tipodoc getTipodoc() {
		return this.tipodoc;
	}

	public void setTipodoc(Tipodoc tipodoc) {
		this.tipodoc = tipodoc;
	}

}